﻿using Microsoft.Extensions.DependencyInjection;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using ZFB.IServices;
using ZFB.Models;
using ZFB.Models.EntityConfig;
using ZFB.Repository;
using ZFB.Repository.AdminLog;
using ZFB.Repository.AdminUser;
using ZFB.Repository.Attachments;
using ZFB.Repository.City;
using ZFB.Repository.Community;
using ZFB.Repository.Region;
using ZFB.Repository.Role;

namespace ZFB.Services
{
    public static class AddService
    {
        public static IServiceCollection AddServices(this IServiceCollection services)
        {
            services.AddScoped<ICityServices, CityServices>();
            services.AddScoped<IAdminLogServices, AdminLogServices>();
            services.AddScoped<IAdminUserServices, AdminUserServices>();
            services.AddScoped<IAttachmentsServices, AttachmentsServices>();
            services.AddScoped<ICommunityServices, CommunityServices>(); 
            services.AddScoped<IHouseAppointmentsServices, HouseAppointmentsServices>();
            services.AddScoped<IHouseServices,HouseServices>();
            services.AddScoped<IIdNameServices, IdNameServices>();
            services.AddScoped<IPermissionServices, PermissionServices>();
            services.AddScoped<IRegionServices, RegionServices>();
            services.AddScoped<IRoleServices, RoleServices>();
            services.AddScoped<ISettingServices, SettingServices>(); 
            services.AddScoped<IUserServices, UserServices>();

            return services;
        }
    }
}
